package com.cakin.javademo;

import java.util.Date;

/**
 * @ClassName: DateDemo
 * @Description: 时间测试
 * @Date: 2020/6/16
 * @Author: cakin
 */
public class DateDemo {
    public static void main(String[] args) {
        // 无参构造方法
        Date date = new Date();
        System.out.println(date);
        // 有参构造方法
        Date date1 = new Date(1000000000);
        System.out.println(date1);

        // 1 boolean after(Date date)
        // 若当调用此方法的Date对象在指定日期之后返回true,否则返回false。
        // 2	boolean before(Date date)
        // 若当调用此方法的Date对象在指定日期之前返回true,否则返回false。
        Date date2 = new Date(2);
        Date date3 = new Date(1);
        boolean after = date2.after(date3);
        boolean before = date2.before(date3);
        System.out.println(after);
        System.out.println(before);
        // 3	Object clone( )
        // 返回此对象的副本。
        Object date4 = date2.clone();
        boolean equals = date2.equals(date4);
        System.out.println(equals);
        /**
         * 4 int compareTo(Date date)
         * 5 int compareTo(Object obj)
         * 比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数。
         */
        System.out.println(date2.compareTo(date3));
        System.out.println(date2.equals(date3));
        /**
         * 7	long getTime( )
         * 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
         */
        System.out.println(new Date().getTime());
        /**
         * 8	int hashCode( )
         *  返回此对象的哈希码值。
         */
        System.out.println(new Date().hashCode());
        /**
         * 9	void setTime(long time)
         *
         * 用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期。
         */
        Date date6 = new Date();
        date6.setTime(1592273994235L);
        System.out.println(date6);
        /**
         *  10	String toString( )
         *  把此 Date 对象转换为以下形式的 String： dow mon dd hh:mm:ss zzz yyyy 其中：
         *  dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
         */
        System.out.println(date6.toString());


    }
}
